#include<stdio.h>
#include<sys/types.h>
#include<sys/stat.h>
#include<stdlib.h>
#include <fcntl.h>
#include <unistd.h>

int main(int argc, char const *argv[])
{
#if 1
    if (argc != 2)
    {
        fprintf(stderr, "程序错误：运行程序时请带入参数(./30-access filename)\n");
        exit(-1);
    }

    //返回值为0，表示文件存在
    //返回值为-1，表示文件不存在
    if (access((argv[1]),F_OK) == 0)
    {
        printf("%s: 文件存在\n",argv[1]);
        remove(argv[1]);//删除文件爱你
    }  
    
    int fd = open(argv[1],O_RDWR|O_CREAT|O_APPEND,0664);
    if (fd < 0)
    {
        perror("1: open");
        exit(-1);
    }
    printf("fd = %d\n",fd);
#endif
#if 0
    if (argc != 2)
    {
        fprintf(stderr, "程序错误：运行程序时请带入参数(./30-access filename)\n");
        exit(-1);
    }

    //返回值为0，表示文件存在
    //返回值为-1，表示文件不存在
    if (access((argv[1]),F_OK) == 0)
    {
        printf("%s: 文件存在\n",argv[1]);
        remove(argv[1]);//删除文件爱你
    }  
    else
    {
        int fd = open(argv[1],O_RDWR|O_CREAT|O_APPEND,0664);
        if (fd < 0)
        {
            perror("1: open");
            exit(-1);
        }
        printf("fd = %d\n",fd);
    }

#endif

    return 0;
}

